#include <stdio.h>
#include <stdlib.h>

void pro(int * mat_1, int * mat_2, int *mat_re, int m, int n);

int main()
{
	int mat_1[12] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
	int mat_2[12] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
	int mat_re[16];
	pro(mat_1, mat_2, mat_re, 4, 3);
	int i,j;
	for(i = 0; i<4; i++)
	{
		for(j = 0; j< 4;j++)printf("%d ", mat_re[i*4 + j]);
		putchar('\n');
	}
	return 0;
}

void pro(int * mat_1, int * mat_2, int *mat_re, int m, int n)
{
	int i,j,k;
	for(i = 0; i< m; i++)
	{
		for(j = 0; j< m; j++)
		{
			mat_re[i*m + j] = 0;
			for(k = 0; k < n; k++)mat_re[i*m+j] += mat_1[i*n + k]*mat_2[k*m+j];
		}
	}
}
